[Script Pascal] Verificando quantos Caracteres por Segundo tem a legenda
Publicado por rafael farias novaes 26/01/2009
[ Hits: 7.087 ]
Homepage: http://www.vivaolinux.com.br/perfil/verPerfil.php?login=bfmano
Seguindo a linha de garimpagem do Pix, estou pesquisando na internet alguns scripts pascal que facilitam nossa vida.
Este gera um relatório dizendo se sua legenda está nos "padrões" de 25 caracteres exibidos em 1 segundo (tempo-limite que a maioria das pessoas leva pra ler a legenda). OBS: o padrão oficial para dvd's comerciais e filmes de cinema é de 13 a 18 cps em média.
Salve este código com o nome ShowCPS.pas na pasta PascalScripts do Subtitle Workshop
// Made by Buzcatcher program ShowCPS; // --------------------------------------------- const cpsreport = 'C:\cps_report.txt'; CRLF = ''#13''#10; Rsep = ' | '; var i, n, p : Integer; duration, sublength, cps : Integer; subtxt, report : String; Ms : TmemoryStream; begin Ms := TmemoryStream.Create; n := GetSubtitleCount-1; for i := 0 to n do begin subtxt := GetSubtitleText(i); sublength := length(subtxt); p := pos(''#13''#10, subtxt); if (p>0) then sublength := sublength - 2; duration := GetSubtitleFinalTime(i) - GetSubtitleInitialTime(i); cps := round((sublength * 1000)/ duration); report := IntToStr(i+1) + Rsep + IntToStr(sublength) + ' Characters' + Rsep + IntToStr(duration) + ' duration(ms)' + Rsep + '==> ' + IntToStr(cps) + ' Char/sec.' if (cps > 25) then report := report + Rsep + 'LEGENDA MUITO RAPIDA' report := report + CRLF Ms.Write(report, length(report)); try Ms.SaveToFile(cpsreport); except MsgBox('Couldn''t write to file!', '&Ok', '', '', $20); end; end; Ms.Free; MsgBox('Report saved in C:\cps_report.txt', '&Ok', '', '', $20); end.
ZCodEdit - Editor de textos com sintaxe HTML e Pascal
Funções de Manipulação de Arquivos Pascal
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (16)
Arch Linux - Guia para Iniciantes (2)
Problemas ao instalar o PHP (11)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)